package cc.rengu.redp.bizimpl.upmp.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * <p>
 * 
 * </p>
 *
 * @author 刘玉亮.LL
 * @since 2021-07-07
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("T_B_AGENT_INFO")
@ApiModel(value="AgentInfo对象", description="")
public class AgentInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "非业务主键")
    @TableField("ID")
    @TableId(type= IdType.ASSIGN_ID)
    private String id;

    @ApiModelProperty(value = "多法人总行机构标识")
    @TableField("INST_ID")
    private String instId;

    @ApiModelProperty(value = "代理机构代码")
    @TableField("AGENT_CODE")
    private String agentCode;

    @ApiModelProperty(value = "代理机构名称")
    @TableField("AGENT_NAME")
    private String agentName;

    @ApiModelProperty(value = "代理机构简称")
    @TableField("AGENT_SIMPLE_NAME")
    private String agentSimpleName;

    @ApiModelProperty(value = "上级代理机构代码")
    @TableField("SUPER_AGENT_CODE")
    private String superAgentCode;

    @ApiModelProperty(value = "管理机构代码")
    @TableField("MANAGE_INST_ID")
    private String manageInstId;

    @ApiModelProperty(value = "经营执照类型")
    @TableField("LICENCE_TYPE")
    private String licenceType;

    @ApiModelProperty(value = "经营执照注册号")
    @TableField("LICENCE_CODE")
    private String licenceCode;

    @ApiModelProperty(value = "注册资本")
    @TableField("REGISTER_CAPITAL")
    private String registerCapital;

    @ApiModelProperty(value = "法人姓名")
    @TableField("ARTIF_NAME")
    private String artifName;

    @ApiModelProperty(value = "法人证件类型")
    @TableField("ARTIF_CERT_TYPE")
    private String artifCertType;

    @ApiModelProperty(value = "法人证件号码")
    @TableField("ARTIF_CERT_NO")
    private String artifCertNo;

    @ApiModelProperty(value = "证件生效日期")
    @TableField("CERT_EFFECTIVE_DATE")
    private String certEffectiveDate;

    @ApiModelProperty(value = "证件失效日期")
    @TableField("CERT_EXPIRY_DATE")
    private String certExpiryDate;

    @ApiModelProperty(value = "法人手机号")
    @TableField("ARTIF_MOBILE")
    private String artifMobile;

    @ApiModelProperty(value = "法人电子邮箱")
    @TableField("ARTIF_EMAIL")
    private String artifEmail;

    @ApiModelProperty(value = "联系人")
    @TableField("CONTACT_NAME")
    private String contactName;

    @ApiModelProperty(value = "联系人电话")
    @TableField("CONTACT_PHONE")
    private String contactPhone;

    @ApiModelProperty(value = "联系人邮箱")
    @TableField("CONTACT_EMAIIL")
    private String contactEmaiil;

    @ApiModelProperty(value = "代理机构邮编")
    @TableField("POST_CODE")
    private String postCode;

    @ApiModelProperty(value = "代理机构地址")
    @TableField("AGENT_ADDR")
    private String agentAddr;

    @ApiModelProperty(value = "是否参与分润")
    @TableField("IS_PROFIT_FLAG")
    private String isProfitFlag;

    @ApiModelProperty(value = "是否全行可见")
    @TableField("IS_SHOW_ALL_FLAG")
    private String isShowAllFlag;

    @ApiModelProperty(value = "结算方式")
    @TableField("SETTLE_TYPE")
    private String settleType;

    @ApiModelProperty(value = "结算周期")
    @TableField("SETTLE_CYCLE")
    private Integer settleCycle;

    @ApiModelProperty(value = "结算账号")
    @TableField("SETTLE_ACCT_NO")
    private String settleAcctNo;

    @ApiModelProperty(value = "结算账户类型")
    @TableField("SETTLE_ACCT_TYPE")
    private String settleAcctType;

    @ApiModelProperty(value = "结算账户开户名")
    @TableField("SETTLE_ACCT_NAME")
    private String settleAcctName;

    @ApiModelProperty(value = "结算账户开户行行号")
    @TableField("ACCT_OPEN_BANK_NO")
    private String acctOpenBankNo;

    @ApiModelProperty(value = "结算账户开户行名称")
    @TableField("ACCT_OPEN_BANK_NAME")
    private String acctOpenBankName;

    @ApiModelProperty(value = "结算账户开户地址-省")
    @TableField("ACCT_OPEN_PROVINCE")
    private String acctOpenProvince;

    @ApiModelProperty(value = "结算账户开户地址-市")
    @TableField("ACCT_OPEN_CITY")
    private String acctOpenCity;

    @ApiModelProperty(value = "结算账户开户地址-区")
    @TableField("ACCT_OPEN_AREA")
    private String acctOpenArea;

    @ApiModelProperty(value = "分润规则")
    @TableField("PROFIT_RULE")
    private String profitRule;

    @ApiModelProperty(value = "代理机构状态")
    @TableField("AGENT_STATUS")
    private String agentStatus;

    @ApiModelProperty(value = "审批状态")
    @TableField("AUDIT_STATUS")
    private String auditStatus;

    @ApiModelProperty(value = "停用原因")
    @TableField("STOP_REASON")
    private String stopReason;

    @ApiModelProperty(value = "注销原因")
    @TableField("CANCEL_REASON")
    private String cancelReason;

    @ApiModelProperty(value = "审批拒绝原因")
    @TableField("AUDIT_REFUSE_REASON")
    private String auditRefuseReason;

    @ApiModelProperty(value = "创建机构")
    @TableField("CRT_ORG_ID")
    private String crtOrgId;

    @ApiModelProperty(value = "创建人")
    @TableField("OPR_ID")
    private String oprId;

    @ApiModelProperty(value = "创建时间戳")
    @TableField("CREATE_TIME")
    private String createTime;

    @ApiModelProperty(value = "最后修改人")
    @TableField("LAST_OPR_ID")
    private String lastOprId;

    @ApiModelProperty(value = "最后修改时间戳")
    @TableField("LAST_UPDATE_TIME")
    private String lastUpdateTime;

    @ApiModelProperty(value = "最后审核人")
    @TableField("LAST_AUDIT_ID")
    private String lastAuditId;

    @ApiModelProperty(value = "最后审核时间")
    @TableField("LAST_AUDIT_TIME")
    private String lastAuditTime;

    @ApiModelProperty(value = "备用字段1")
    @TableField("REMARK1")
    private String remark1;

    @ApiModelProperty(value = "备用字段2")
    @TableField("REMARK2")
    private String remark2;

    @ApiModelProperty(value = "备用字段3")
    @TableField("REMARK3")
    private String remark3;

    @ApiModelProperty(value = "备用字段4")
    @TableField("REMARK4")
    private String remark4;

    @ApiModelProperty(value = "备用字段5")
    @TableField("REMARK5")
    private String remark5;

    ///////////////////////////////////////////////////////////////////////////
    @TableField(exist = false)
    private String profitConfInfoList;

    ///////////////////////////////////////////////////////////////////////////
    @TableField(exist = false)
    private String settleCycleType;

    ///////////////////////////////////////////////////////////////////////////
    /** 全产品分润 */
    //分润模式
    @TableField(exist = false)
    private String profitInputModeALL;
    //成本费率值
    @TableField(exist = false)
    private String costFeeRateALL;
    //成本封顶金额
    @TableField(exist = false)
    private String costCappingAmtALL;
    //固定金额分段序号
    @TableField(exist = false)
    private String profitFixedIndexALL;
    //固定金额分段起始值
    @TableField(exist = false)
    private String profitFixedStartALL;
    //固定金额分段截止值
    @TableField(exist = false)
    private String profitFixedEndALL;
    //固定金额值
    @TableField(exist = false)
    private String profitFixedAmtALL;
    //分润比例
    @TableField(exist = false)
    private String profitScaleALL;
    //分润封顶金额
    @TableField(exist = false)
    private String profitCappingAmtALL;

}
